package com.mes.utils;

import java.util.List;

import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;

import org.apache.poi.ss.formula.functions.T;

import com.mes.entity.cb.PageBean;
import com.mes.entity.cb.Pages;

/**
 * 陈彬自创工具类
 * @ClassName: CustomUtils 
 * @Description:
 * @Author cb
 * @Date 2017年12月25日 上午11:47:10 
 * @version 1.0
 */
public class CustomUtils {
	
	/**
	 * 分页时,每页和大小计算
	 * @param limit 页面大小
	 * @param offset 当前页
	 * @return
	 */
	public static PageBean paging(String limit, String offset) {
		PageBean page=new PageBean();
		if (!"0".equals(offset)) {
			page.setPage(Integer.parseInt(offset)/Integer.parseInt(limit));
		}
		page.setPageSize(Integer.parseInt(limit));
		return page;
	}

	public static Pages pagesql(String limit, String offset) {
		Pages page=new Pages();

		page.setPage(Integer.parseInt(offset)+1);

		page.setPageSize(Integer.parseInt(limit));
		return page;

	}

	
	/**
	 * 分页时,每页和大小计算
	 * @param limit 页面大小
	 * @param offset 当前页
	 * @return
	 */
	public static Pages pagings(String limit, String offset) {
		Pages page=new Pages();
		if (StringUtil.isEmpty(limit) && StringUtil.isEmpty(offset)) {
			
			return page;
		}
		
		
		if (!"0".equals(offset)) {
			page.setPage(Integer.parseInt(offset)/Integer.parseInt(limit));
		}
		page.setPageSize(Integer.parseInt(limit));
		return page;
	}
	
	/**
	 * 
	 * @param response
	 * @param total
	 * @param list
	 * @throws Exception
	 */
	public static void sendOut(HttpServletResponse response, int total,List<T> list)
			throws Exception {
		JSONObject jsonObject = new JSONObject();
		JsonConfig jsonConfig = new JsonConfig();
		jsonConfig.registerJsonValueProcessor(java.util.Date.class,new DateJsonValueProcessor("yyyy-MM-dd"));
		JSONArray jsonArray = JSONArray.fromObject(list, jsonConfig);
		jsonObject.put("total", total);
		jsonObject.put("rows", jsonArray);
		ResponseUtil.write(response, jsonObject);
	}
}
